Dynamic mobile seller routing

ABSTRACT

Methods and systems are provided for combining historic data with geospatial data to help mobile sellers enhance their profits. Data can be collected, stored, and analyzed, such as via a server, to help mobile sellers select new locations for selling their products. For example, information regarding the sales of a plurality of other mobile sellers can be collected, stored, and analyzed to help the mobile sellers decide which one of a plurality of different candidate locations should be selected as the next location where the mobile sellers should sell products.

BACKGROUND

1. Technical Field

The present disclosure generally relates to electronic commerce and,more particularly, relates to the use of analytics by mobile sellers toenhance profits.

2. Related Art

Mobile sellers are common. They sell a wide range of products. Forexample, mobile sellers sell food, beverages, household items, tools,clothing, and many other things. Mobile sellers can sell from trucksthat park along the side of the road, from booths at swap meets and fleemarkets, from booths at trade shows, as well as from concessions atevents such as outdoor concerts, sporting events, festivals, and thelike.

Mobile sellers typically move from one location to another location. Ofcourse, the mobile sellers typically attempt to select locations andtimes for selling in a manner that enhances profits. This is typicallydone based upon prior experience, common sense, advice from others, andintuition. However, prior experience, common sense, advice from others,and intuition do not necessarily facilitate the selection of thoseparticular locations and times which will actually enhance profits forthe mobile seller.

Catering truck operators are examples of such mobile sellers. Cateringtruck operators typically select the locations and times which theybelieve will tend to maximize their profits. For example, catering truckoperators generally select locations and times for which they believecustomers are likely to be present and for which they believe that few,if any, other catering trucks are likely to be present. In this manner,the catering truck operators attempt to maximize the number of potentialcustomers while attempting to minimize unwanted competition.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system for providing and using mobileselling analytics, according to an embodiment;

FIG. 2 is a flow chart showing a method for providing and using mobileselling analytics, according to an embodiment;

FIG. 3 is a flow chart showing further detail of the method forproviding and using mobile selling analytics, according to anembodiment; and

FIG. 4 is a block diagram of an example of a computer that is suitablefor use in the system for providing and using mobile selling analytics,according to an embodiment.

DETAILED DESCRIPTION

Mobile sellers typically attempt to maximize their profits by selectingselling locations and times based upon such factors as prior experience,common sense, advice from others, and intuition. However, priorexperience, common sense, advice from others, and intuition do notnecessarily facilitate the selection of those particular locations whichwill actually maximize profits for the mobile sellers.

According to an embodiment, historic data can be combined with mapinformation, geospacial information, Geographic Information System (GIS)information, and/or other information. The combined information can beanalyzed to help the mobile sellers or users substantially enhance theirprofits. The analysis can determine locations that tend to maximize thenumber of potential customers for the user while also tending tominimize the amount of competition.

Data can be collected, stored, and analyzed, such as via a server, tohelp improve the predictive capabilities of the mobile seller analyticssystem. The server can be a dedicated server, i.e., a server that isused substantially only for providing mobile seller analytics, or can bea shared server, i.e., a server that provides one or more othersubstantial services.

According to an embodiment, the server can be a payment server or can beassociated with one or more payment servers. For example, the server canbe a server of a payment provider such as PayPal, Inc. The servers ofsuch payment providers tend to have access to information regarding whatproducts are being purchased, where such purchases are being made, andwhen such purchases are being made.

According to an embodiment, the server can be an online seller server orcan be associated with one or more online seller servers. For example,the server can be a server of an online seller such as eBay, Inc. Theservers of such online sellers also tend to have access to informationregarding what products are being purchased, where such purchases arebeing made, and when such purchases are being made.

Information regarding sales of the user can be collected, stored, andanalyzed. Information regarding sales of a plurality of other mobilesellers can similarly be collected, stored, and analyzed. Informationregarding sales of fixed location vendors, e.g., brick and mortarmerchants, can also be collected, stored, and analyzed. Informationregarding sales of various such businesses (including the user'sbusiness, other mobile seller's businesses, and fixed location vendor'sbusinesses) can be collected, stored, combined, and analyzed to help theuser to enhance the user's profits. By using a payment provider serveror online seller server or by cooperating with one or more of suchservers, the mobile seller analytics system can more readily obtain suchinformation.

The historic sales data can be payment provider data, online sales data,credit data, home ownership data, automobile ownership data,sport/recreational vehicle ownership data, population data, incomedistribution data, consumer data (such as data regarding what productsare purchase at what locations and at what times), demographic data, taxdata (such as how much taxes are paid at different locations and such astax rate boundaries), census data, marketing data, Internet searchengine data (such as that compiled by Google regarding Google's accountholders), and/or any other available data that can be used, at least inpart, to determine when and where mobile sellers should sell products.The data can include any data regarding who purchases what products,where the products are purchased (and/or where the purchasers live,work, or shop) and when the products are purchased. The data can beobtained by any means possible.

Such historic data can be stored in various databases. For example, thedata can be stored in payment provider databases, in automobileownership databases, in sport/recreational vehicle ownership databases,in online sales databases, in credit databases, in home ownershipdatabases, in population databases, in income distribution databases, inconsumer databases, in demographic databases, in tax databases, incensus databases, in marketing databases, and/or in Internet searchengine related databases. The databases can include any databasescontaining data regarding who purchases what products and when theproducts are purchased.

Map data, geospatial data, and/or Geographic Information Systems (GIS)data can be used in combination with the historic sales data todetermine a new location for a user in an attempt to enhance the profitsthereof. The historic sales data can be used to determine what areashave a sufficient demand for products of the user. The map data,geospatial data, and/or GIS data can be used to determine more preciselywhere, within or near such areas, the user can make mobile sells.

Other data, such as local tax rates, crime rates, purchasing habits,business and school locations, and the like can be used, at least inpart, to determine a new location. For example, if all other factors areequal, a location with the lowest local tax rate can be selected.

Map data, geospatial data, and/or Geographic Information Systems (GIS)data can be used in combination with the historic sales data todetermine a new location for a user in an attempt to enhance the profitsthereof. The historic sales data can be used to determine what areashave a sufficient demand for products of the user. The map data,geospatial data, and/or GIS data can be used to determine more preciselywhere, within or near such areas, the user can make mobile sales.

The analysis can take into account a present location of the user. Thus,only new locations near the user can be suggested by the mobile selleranalytics system. The user can specify that new locations be within apredetermined distance with respect to the present location of the user.The predetermined distance can be specified in terms of a distancemetric (such as in miles), in terms of travel time (such as the numberof minutes from the user's present location). Travel times can be usedin the analysis by assuming traffic conditions and legal speed limits.Alternatively, travel times can be used in the analysis using real timeinformation regarding traffic (such as the actual real time speed of thetraffic between the user and the new location) and using actual speedlimits. Generally, new locations that tend to minimize drive times canbe given higher weight toward selection as compared with new locationsthat do not tend to minimized drive times.

The analysis can take into account travel costs of the user's mobilevending operation. The analysis can take into account actual, historiccosts, such as those based upon historic averages of the user and/orother mobile sellers. For example, if the user has sufficient historicinformation, an average cost per mile for the user can be used toaccount for travel costs of the user's mobile vending operation.Otherwise, an average cost per mile for other mobile sellers can beused. The user can enter the average cost per mile or information fromwhich this cost can be determined, such as during a set up process.

The analysis can take into account assumed travel costs base upon rulesof thumb, tax laws/regulations, or any other information. For example,the user or anyone else can set up the analysis to assume eighty-fivecents per mile as the travel costs.

The analysis can take into account travel costs based upon the user'shistory and/or any assumptions or other information provided by theuser. The travel costs can include time (the money value of the user'stime and/or the mobile selling operation's time), opportunity cost (lostsales while traveling), gas, maintenance, insurance, permitting,potential for accidents, and/or any other costs or risks associated withsuch travel.

Rather than determining a single new location, the mobile selleranalytics system can determine either a plurality of alternative newlocations and/or can determine one or more routes having a plurality ofnew locations. One or more alternate locations or one or morealternative routes can be provided for at least one such determinedlocation or route. The number of new locations and alternative newlocations can be specified by the user. The starting point and the totaltime for the route can be specified by the user.

For example, the user can request that a primary route on the east sideof town having four new locations, starting at the user's home, andhaving at total duration of eight hours (including both travel andon-location times) be determined by the server. The user can alsorequest that for each new location, two alternative new locations beprovided. The user can also request an alternative or secondary route onthe west side of town and another alternative or tertiary route on thenorth side of town.

Statistics can be provided by the server for primary route, thesecondary route, and the tertiary route. For example, the statistics caninclude total drive times, total on-location times, expected costs, andexpected profits. The expected profits can be based, at least in part,on historic sells information for the locations.

Thus, routing can be provided, used and updated in a manner similar toor resulting in a decision tree. As decisions are made regarding whichnew location to go to next, the route or decision tree can be updatedaccordingly. The criteria used for each segment of the route (eachbranch of the decision tree) can be provided to help the user makedecisions about which new location to select. Other informationregarding each segment of the route can also be provided. For example,information regarding places the user may want to stop (such as thelocations of the user's favorite restaurants) along the route can beprovided.

The route can be present to the user as a map, text, or any combinationthereof. The route can be presented to the user on the screen of theuser's mobile device, the user's merchant device, or in any othermanner. The route can be presented to the user visually and/or verbally.

In this manner, a dynamic routing plan can be provided that tends tooptimize profits while fulfilling other, user defined criteria. Thedynamic routing plan can maintain flexibility so that the user can makedecisions regarding where to go next. The user can make all of thedecisions regarding the route (and thus the decision tree) at one time,such as just prior starting out on the route.

The user can make the decisions one at a time, e.g., in real time, asthe user travels over the route. Thus, the user can decide which newlocation to go to when the user reaches a decision point in the route. Aglobal positioning system (GPS), such as a GPS of the user's mobiledevice, can update the routing alternatives as the user makes suchdecisions so that only any remaining alternative routes or alternativelocations are shown.

The routing analysis can take into account all of the informationdiscussed herein to determine each new location and the amount of timeto be spent at each new location. Each new location and the amount oftime spent at each new location can be taken into account to determineeach subsequent new location.

The time to be spent at each new location can be determined, at least inpart, by what is happening or what is expected to happen at otherlocations. For example, the time to be spent at an earlier location inthe user's route can be shortened when a larger than usual number ofcustomers are expected at a later location in the user's route. Such alarger than usual number of customers can be expected based uponhistoric sells data. For example, on Mondays and Friday, the number ofcustomers at a particular location can be greater that on other days ofthe week. Therefore, the user may want to spend more time at thislocation.

Best routing to each new location can be determined by the server. Forexample, the shortest route, the safest route, quickest route, and/orthe least traffic route can be determined to each new location. The bestroute can be determined using any desired criteria, such as user definedcriteria.

Weighting factors can be used for the criteria, such as the criteriaregarding the best route. For example, a combination of the shortestroute, the safest route, quickest route, and/or the least traffic routecan be determined using different weight factors. The weighting factorscan determine how much influence each criteria has on the outcome ofbest route determination. For example, weighting factors can cause thequickest route to have more influence upon the outcome of the best routedetermination than does the shortest route. The weighting factors can beprovided by the user, for example.

One or more alternative locations can be constrained to be near oneanother so as to service same customers. Thus, the user can simply parkin a different, nearby location and still attract substantially the samecustomers. An alternative location may be useful when another mobileseller, e.g., a competitor, is at or is expected to be at a particularlocation.

On the other hand, alternative locations can be at altogether differentgeographic locations, which can be far from one another and thus servicealtogether different customers. The user can specify whether alternativelocations are to be near one another or far from each other. The usercan specify a distance between alternative locations.

User criteria can be used by the processor(s) to determine the newlocation for the mobile sellers. For example, the user can specify thatthe new location be within a given distance from the old location, bereachable (at normal or legal driving speeds) by a given time, have agiven number of potential customers, be in a neighborhood having a givenmedian income, be likely to meet a given profit goal, etc.

According to an embodiment, the mobile seller analytics system cancomprise a memory configured to store analytic data. The mobile selleranalytics system can comprise one or more processors that are configuredto receive a communication including an indication of a desire of a userto have the mobile seller analytics system select a new location formobile sales, access the analytic data, and perform analysis using theanalytic data to determine the new location for the mobile sales. Theprocessor(s) can send a communication to the user that includes anindication of the new location.

The memory can be associated with at least one of an online sellerserver and a payment server. The analytic data can include historicsales data and map data that are used in combination to determine thenew location for the mobile sales. The analytic data can includehistoric data regarding past sales of the user, historic data regardingpast sales of mobile sellers other than the user, and/or historic dataregarding past sales of fixed location vendors.

According to an embodiment, a method can comprise storing, in a memory,analytic data. The method can comprise receiving, electronically via oneor more processors, a communication including an indication of a desireof a user to have the mobile seller analytics system select a newlocation for mobile sales. The method can comprise accessing, via theprocessor(s), the analytic data. The method can comprise performing, viathe processor(s), analysis using the analytic data to determine the newlocation for the mobile sales. The method can comprise sending, via theprocessor(s), a communication to the user including an indication of thenew location. According to an embodiment, a computer program product cancomprise a non-transitory computer readable medium having computerreadable and executable code for instructing one or more processors toperform any of the methods discussed herein.

FIG. 1 is a block diagram of the mobile seller analytics system, inaccordance with an embodiment. The mobile seller analytics system caninclude a user's mobile device 120. The user's mobile device 120 can becarried by a mobile seller, e.g., the user. The user's mobile device 120can be a portable electronic device such as a cellular telephone, asmart phone, a portable computer, laptop computer, a notebook computer,tablet computer, or the like. The user's mobile device 120 can include aprocessor 121, a memory 122, and a global positioning system (GPS) 123,for example. An app 124 can be stored in the memory 122 and executed bythe processor 121 or can be omitted.

The mobile seller analytics system can include a plurality of othermobile devices 140. The other mobile devices 140 can be similar to themobile device 120 and can be carried by other mobile sellers. The othermobile sellers can be competitors with respect to the user. The mobileseller analytics system can include any number of such mobile seller'sdevices. The other mobile devices 140 can be portable electronic devicessuch as cellular telephones, smart phones, portable computers, laptopcomputers, notebook computers, tablet computers, or the like. Each ofother mobile devices 140 can include a processor 141, a memory 142, anda global positioning system (GPS) 143, for example. An app 144 can bestored in the memory 142 and executed by the processor 141 or can beomitted.

The mobile seller analytics system can include a merchant device 150.The merchant device 150 can be a merchant device of the user. Themerchant device 150 can be a merchant checkout terminal, cash register,a credit card reader, or the like. The merchant device 150 can include amemory 151 and a processor 152. The merchant device 150 can be a fixtureor part of the user's mobile sales equipment, such as a catering truck.

The mobile seller analytics system can include a server 130. The server130 can be a server of a payment provider, such as Paypal, Inc. Theserver 130 can be a server of an online seller, such as eBay, Inc. Theserver 130 can be a single server or can be a plurality of servers. Theserver 130 can include one or more processors 131 and a memory 132. Thememory 132 can be a memory of the server 130 or can be a memory that isassociated with the server 130. The memory 132 can be a distributedmemory. The memory 132 can store a user account 133 and a merchantaccount 134.

The merchant device 150, the mobile device 120, the other mobile devices140, and the server 130 can communicate with one another via a network,such as the Internet 140. The merchant device 110, the mobile device120, and the server 130 can communicate with one another via one or morenetworks, such as local area networks (LANs), wide area networks (WANs),cellular telephone networks, and the like.

The analytic data can come from a number of databases, as discussedherein. Examples of such databases can be those databases that arecompiled by payment providers and online sellers. Payment providersstore information regarding payments made due to sales at variouslocations. Online sellers store similar information. Such informationcan be used to facilitate determination of a new location for a mobileseller. For example, if the mobile seller sells sport t-shirts and theanalytic data indicates that many sports fans live at a nearby location,then the nearby location would likely be a candidate for the newlocation of the mobile sellers. The analytic data can indicate that manysports fans live at a nearby location because a high number of sportstickets and sporting goods are sold to people who live in the nearbylocation. The analytic data can be used by the mobile seller for otherpurposes, such as deciding what products to sell.

The analytic data can include the present location and/or the expectedfuture location of other mobile sellers. For example, the server 130 candetermine the present location and/or the expected future of othermobile sellers from historic sales information, social media networks,such as Facebook® or any other source. This information can be used toin the analysis to determine the new location for the user. In thismanner, the user can tend to minimize competition.

FIGS. 2 and 3 are flow charts that describe examples of operation of themethod for providing and using mobile selling analytics, according toembodiments thereof. Note that one or more of the steps described hereinmay be combined, omitted, or performed in a different order, as desiredor appropriate.

FIG. 2 is a flow chart showing a method for providing and using mobileselling analytics, according to an embodiment. A user wants to movemobile sales to a new location, as shown in step 201. The user may, forexample, have a catering truck that prepares and sells Mexican food suchas tacos and burritos. The user can be the owner/operator of thecatering truck. The user can have just finished making sales at onelocation and need to select another location for making sales. The usercan suggest potential locations to the mobile seller analytics systemsand/or the user can let the mobile seller analytics system suggest newlocations.

Typically, the user will want to select a new location that tends tomaximize sales, and thus profits as well. Thus, the user generally wantsto select a new location having an established market (historicallysufficient sales) and ideally lacking any competition (or at least haveas little competition as possible). Other criteria can be applicable.For example, the user may want or be constrained (such as by a businesslicense or other permit) to stay within a certain neighborhood or city.

However, at least some of the selection criteria may be at odds withothers of the selection criteria. That is, there may be conflictingobjectives. For example, the new location with the most prospectivecustomers may also have the most competition. The mobile selleranalytics system can analyze data, such as historic data regarding thedemand for the user's products and historic data regarding competitionat the new location. The mobile seller analytics system can, forexample, model the new location to determine the likely profit to beobtained by seller there. The likely profit associated with thislocation can be compared to the likely profit from other potential newlocations. The prospective new location or locations (if alternatelocation have been requested) with the highest profit potential can thenbe suggested to the user by the mobile seller analytics system, as longas these location conform to any other criteria.

The user can start an app 124 on the user's first mobile device 120, asshown in step 202. The app 124 can be provided by the seller of themobile seller analytics system, for example. The seller of the systemfor providing and using mobile selling analytics can be a paymentprovider such as PayPal, Inc., an online seller such as eBay, Inc., amarket research company, or any other entity.

The user can select “Find A New Location For Mobile Sales” within theapp 124, as shown in step 203. The app 124 can provide the user withvarious different options. For example, the app 124 can provide the userwith an option for entering criteria or preference for the new location.Criteria can be firm requirements for the new location which must bemet, such as that the new location be within ten miles of the presentlocation. Another example of a criteria would be requiring that the newlocation be within the city limits of Los Angeles. The app 124 canoptionally ask the user for one or more trial locations to consider,either alone or in combination with system selected locations.

The app 124 can provide the user with statistical information. Forexample, the user can have the app 124 show all areas within a citywhere the sales of Mexican food by catering trucks is greater than aspecified amount during a specified time period. For example, the usercan have the app 124 show all areas within the city of Burbank where thesale of Mexican food by catering trucks is greater, on average, than$300 per truck between 12:00 noon and 1:00 PM on a Tuesday.

The app 124 can provide the user with other information. For example,the user can have the app 124 show all of the Chinese restaurants alonga route suggested by the mobile seller analytics system or by the userso that the user can have Chinese food for lunch.

Preferences can be flexible requirements which will be met if possible,but which may not be met. For example, a preference may be that no othermobile sellers selling Mexican food be within three miles of the newlocation. Another example of a preference may be that the new locationbe within one tenth of a mile of a particular location, such as aspecified construction sight.

The app 124 can cause a communication to be sent from the first mobiledevice 120 to the server 130. The communication can be sent from thefirst mobile device 120 to the server 130 via one or more networks, suchas local area networks (LANs), wide area networks (WANs) such as theInternet 140, cellular telephone networks, and the like. The firstcommunication can include a GPS location of the user and can include anindication of a desire to have the server 130 select a new location formobile sales, as shown in step 204. Optionally, the user can enter theuser's present location.

As a further option, the user can enter a location other than the user'spresent location. This option can be useful when the user is at alocation other than the present location of the user's mobile vendingoperation when the user is using the app 124 to request the newlocation. For example, the user may have to be away from the mobilevending operation running errands and may be in the process of returningto move the mobile vending operation to a new location. As a furtherexample, the user can enter present locations for other mobile sellers(such as other catering trucks that are owned by the user) that are notat the present location of the user. In this manner, the user can bettermanage the routing of a fleet of mobile sellers (such as a fleet ofcatering trucks). The system can determine new locations and/or routesfor a plurality of mobile sellers and can thus mitigate conflictstherebetween while tending to optimization profits for the group.

The server 130 can use stored analytic data to determine a new location,as shown in step 205. For example, server 130 can use analytic data froma payment provider database, an online sales database, a creditdatabase, a home ownership database, a population database, an incomedistribution database, a consumer database, a demographic database, atax database, a census database, a marketing database, and/or anInternet search engine database. The server 130 can use any usefulinformation that can be made available to the server 130 to determinethe new location. The server 130 can query the Internet, such as via aGoogle search, in an attempt to find data that may be useful indetermining the new location.

The server 130 can use the stored analytic data to determine a pluralityof potential new locations. For example, the server 130 can use thestored analytic data to determine a primary new location, at secondarynew location, and a tertiary new location.

The server 130 can communicate the new location(s) to the user, as shownin step 206. The server 130 can communicate the new location(s) to theuser via one or more networks, such as local area networks (LANs), widearea networks (WANs) such as the Internet 140, cellular telephonenetworks, and the like.

The user can select one of the new locations for mobile vending and cantravel to the selected location, as shown in step 207. Either a newlocation (with or without one or more alternative new locations) or anew route (with or without one or more alternative new routes) can berequested from the mobile seller analytic system by the user. Thus, theuser can receive either a new location (with or without one or morealternative new locations) or a new route (with or without one or morealternative new routes).

Information provided by the mobile seller analytics system can beupdated dynamically, e.g., substantially in real time. For example, if acompetitor moves to a location near where the user is selling, the usercan be notified and the user can be provided with one or more newlocations to which the user can move if desired. The new location(s) canbe based upon the latest available information, such as substantiallyreal time sales of other vendors in the same area as the user. Suchsubstantially real time sales of other vendors in the same area can bereadily available to payment providers, for example.

FIG. 3 is a flow chart showing further detail of the method forproviding and using mobile selling analytics, according to anembodiment. The memory 132 can store analytic data, as shown in step301. The memory 132 can be a plurality of separate memory devices at aplurality of different locations. For example, the memory 132 cancomprise a plurality of databases such as payment provider databases,automobile ownership databases, sport/recreational vehicle ownershipdatabases, online sales databases, credit databases, home ownershipdatabases, population databases, income distribution databases, consumerdatabases, demographic databases, tax databases, census databases,marketing databases, and Internet search engine related databases.

The processor(s) 131 receive a communication including an indication ofa desire of the user to have the mobile seller analytics system select anew location or a new route for mobile sales, as shown in step 302. Thecommunication can contain options regarding the request. For example,the user can ask for one alternate new location although the user hadpreviously set up the mobile seller analytics system to provide only asingle new location during an earlier set up procedure.

The processor(s) 131 can access the analytic data, as shown in step 303.Accessing the analytic data can include accessing the plurality ofdifferent databases, such as payment provider databases, automobileownership databases, sport/recreational vehicle ownership databases,online sales databases, credit databases, home ownership databases,population databases, income distribution databases, consumer databases,demographic databases, tax databases, census databases, marketingdatabases, and Internet search engine related databases.

The processor(s) 131 perform analysis using the analytic data todetermine the new location for the mobile sales, as shown in step 304.The analysis can include various analytic tools or methodologies, suchas the simplex algorithm, Monte Carlo simulation, decision treealgorithms, game theory algorithms, queuing theory algorithms, Markovdecision making processes (POMDPs), shortest route algorithms, expectedvalue calculations, Bayesian statistical analysis and the like.

Standard or pre-defined assumptions can be used to perform the analysis.For example, the user's profit can be assumed to be ten percent of salesand the user's travel cost can be assumed to be 75 cents per mile. Theuser can modify any such pre-defined assumptions, such as during a setup process or on a case-by-case basis. User provided assumptions can beused to perform the analysis and the user provided assumption can beprovided during the set up process.

The processor(s) 131 send a communication to the user including anindication of the new location, as shown in step 305. The user can thenchoose to go to the suggested new location, request a differentlocation, and/or modify the criteria regarding the selection process.

As an example, consider a person who uses a service like PayPal Here®wants to sell water at a Fourth of July event. The person can look up,using the app 124, where the best place to sell water in a given city islikely to be. Data like historical sales, tax rates (one city may have abetter tax rate than another), population, etc. can be used by theserver 130 to predict where the best place to sell water would be.

As a further example, a person who uses a service like PayPal Here® isselling kettle corn from a mobile food trailer. PayPal Here® or the app124 displays a notification that if the user moves two blocks down, thenthe user will be in a location that has a lower tax rate. The app 124can be a module or portion of another app, like a PayPal Here® app.

In implementation of the various embodiments, embodiments of theinvention may comprise a personal computing device, such as a personalcomputer, laptop, PDA, cellular phone or other personal computing orcommunication devices. The payment provider system may comprise anetwork computing device, such as a server or a plurality of servers,computers, or processors, combined to define a computer system ornetwork to provide the payment services provided by a payment providersystem.

In this regard, a computer system may include a bus or othercommunication mechanism for communicating information, whichinterconnects subsystems and components, such as a processing component(e.g., processor, micro-controller, digital signal processor (DSP),etc.), a system memory component (e.g., RAM), a static storage component(e.g., ROM), a disk drive component (e.g., magnetic or optical), anetwork interface component (e.g., modem or Ethernet card), a displaycomponent (e.g., CRT or LCD), an input component (e.g., keyboard orkeypad), and/or cursor control component (e.g., mouse or trackball). Inone embodiment, a disk drive component may comprise a database havingone or more disk drive components.

The computer system may perform specific operations by processor andexecute one or more sequences of one or more instructions contained in asystem memory component. Such instructions may be read into the systemmemory component from another computer readable medium, such as staticstorage component or disk drive component. In other embodiments,hard-wired circuitry may be used in place of or in combination withsoftware instructions to implement the invention.

Payment processing can be through known methods, such as transactiondetails being communicated to the payment provider through the app, thepayment provider processing the details, which may include user accountidentifier information and authentication, merchant information, andtransaction details. The user account may be accessed to determine ifany restrictions or limitations may prevent the transaction from beingapproved. If approved, the payment provider may send a notification tothe merchant and/or the user.

Payment processing can be through known methods, such as transactiondetails being communicated to the payment provider through the app, thepayment provider processing the details, which may include user accountand identifier information and authentication, merchant information, andtransaction details. The user account may be accessed to determine ifany restrictions or limitations may prevent the transaction from beingapproved. If approved, the payment provider may send a notification tothe merchant and/or the user.

FIG. 4 is a block diagram of a computer system 400 suitable forimplementing one or more embodiments of the present disclosure. Invarious implementations, the PIN pad and/or merchant terminal maycomprise a computing device (e.g., a personal computer, laptop, smartphone, tablet, PDA, Bluetooth device, etc.) capable of communicatingwith the network. The merchant and/or payment provider may utilize anetwork computing device (e.g., a network server) capable ofcommunicating with the network. It should be appreciated that each ofthe devices utilized by users, merchants, and payment providers may beimplemented as computer system 400 in a manner as follows.

Computer system 400 includes a bus 402 or other communication mechanismfor communicating information data, signals, and information betweenvarious components of computer system 400. Components include aninput/output (I/O) component 404 that processes a user action, such asselecting keys from a keypad/keyboard, selecting one or more buttons orlinks, etc., and sends a corresponding signal to bus 402. I/O component404 may also include an output component, such as a display 411 and acursor control 413 (such as a keyboard, keypad, mouse, etc.). Anoptional audio input/output component 405 may also be included to allowa user to use voice for inputting information by converting audiosignals. Audio I/O component 405 may allow the user to hear audio. Atransceiver or network interface 406 transmits and receives signalsbetween computer system 400 and other devices, such as a user device, amerchant server, or a payment provider server via network 460. In oneembodiment, the transmission is wireless, although other transmissionmediums and methods may also be suitable. A processor 412, which can bea micro-controller, digital signal processor (DSP), or other processingcomponent, processes these various signals, such as for display oncomputer system 400 or transmission to other devices via a communicationlink 418. Processor 412 may also control transmission of information,such as cookies or IP addresses, to other devices.

Components of computer system 400 also include a system memory component414 (e.g., RAM), a static storage component 416 (e.g., ROM), and/or adisk drive 417. Computer system 400 performs specific operations byprocessor 412 and other components by executing one or more sequences ofinstructions contained in system memory component 414. Logic may beencoded in a computer readable medium, which may refer to any mediumthat participates in providing instructions to processor 412 forexecution. Such a medium may take many forms, including but not limitedto, non-volatile media, volatile media, and transmission media. Invarious implementations, non-volatile media includes optical or magneticdisks, volatile media includes dynamic memory, such as system memorycomponent 414, and transmission media includes coaxial cables, copperwire, and fiber optics, including wires that comprise bus 402. In oneembodiment, the logic is encoded in non-transitory computer readablemedium. In one example, transmission media may take the form of acousticor light waves, such as those generated during radio wave, optical, andinfrared data communications.

Some common forms of computer readable and executable media include, forexample, floppy disk, flexible disk, hard disk, magnetic tape, any othermagnetic medium, CD-ROM, any other optical medium, punch cards, papertape, any other physical medium with patterns of holes, RAM, ROM,E2PROM, FLASH-EPROM, any other memory chip or cartridge, carrier wave,or any other medium from which a computer is adapted to read.

In various embodiments, execution of instruction sequences forpracticing the invention may be performed by a computer system. Invarious other embodiments, a plurality of computer systems coupled by acommunication link (e.g., LAN, WLAN, PTSN, or various other wired orwireless networks) may perform instruction sequences to practice theinvention in coordination with one another.

Modules described herein can be embodied in one or more computerreadable media or be in communication with one or more processors toexecute or process the steps described herein.

A computer system may transmit and receive messages, data, informationand instructions, including one or more programs (i.e., applicationcode) through a communication link and a communication interface.Received program code may be executed by a processor as received and/orstored in a disk drive component or some other non-volatile storagecomponent for execution.

Where applicable, various embodiments provided by the present disclosuremay be implemented using hardware, software, or combinations of hardwareand software. Also, where applicable, the various hardware componentsand/or software components set forth herein may be combined intocomposite components comprising software, hardware, and/or both withoutdeparting from the spirit of the present disclosure. Where applicable,the various hardware components and/or software components set forthherein may be separated into sub-components comprising software,hardware, or both without departing from the scope of the presentdisclosure. In addition, where applicable, it is contemplated thatsoftware components may be implemented as hardware components andvice-versa—for example, a virtual Secure Element (vSE) implementation ora logical hardware implementation.

Software, in accordance with the present disclosure, such as programcode and/or data, may be stored on one or more computer readable andexecutable mediums. It is also contemplated that software identifiedherein may be implemented using one or more general purpose or specificpurpose computers and/or computer systems, networked and/or otherwise.Where applicable, the ordering of various steps described herein may bechanged, combined into composite steps, and/or separated into sub-stepsto provide features described herein.

As used herein, the term “map data” can include any map, geospatial,GIS, or other location data.

As used herein, the term “store” can include any business or place ofbusiness. The store can be a mobile store or a brick and mortar store oran online store. The store can be any person or entity that sells aproduct.

As used herein, the term “product” can include any item or service.Thus, the term “product” can refer to physical products, digital goods,services, or anything for which a user can make a payment, includingcharitable donations. A product can be anything that can be sold.

As used herein, the term “merchant” can include any seller of products.The term merchant can include a store. The products can be sold from astore or in any other manner.

As used herein, the term “mobile device” can include any portableelectronic device that can facilitate data communications, such as via acellular network and/or the Internet. Examples of mobile devices includecellular telephones, smart phones, tablet computers, and laptopcomputers.

As used herein, the term “time” can include time of day, day of theweek, day of the month, day of the year, week of the year, and/or monthof the year. The term “time” can include any relevant time frame.

Information regarding the sales of a plurality of other merchants, suchas mobile sellers and fixed location vendors, as well as demographic,map and other information, can be collected, stored, and analyzedtogether with information regarding the user to help the user decidewhich one of a plurality of different candidate locations should beselected as the next or new location where the user should sellproducts. In this manner, the mobile sellers can tend to enhance oroptimize profits.

The foregoing disclosure is not intended to limit the present inventionto the precise forms or particular fields of use disclosed. It iscontemplated that various alternate embodiments and/or modifications tothe present invention, whether explicitly described or implied herein,are possible in light of the disclosure. Having thus described variousexample embodiments of the disclosure, persons of ordinary skill in theart will recognize that changes may be made in form and detail withoutdeparting from the scope of the invention. Thus, the invention islimited only by the claims.

What is claimed is:
 1. A computer system for dynamically routing amobile sales operation, comprising: a computing device associated withthe mobile sales operation; a global positioning system (GPS) device tonavigate the mobile sales operation; a memory; and one or moreprocessors in communication with the memory to: receive, from thecomputing device associated with the mobile sales operation, a requestto provide location recommendations for each of a plurality of availableroutes to the mobile sales operation, the request comprising GPScoordinates of the mobile sales operation provided by the GPS device;analyze analytic data comprising sales of one or more mobile competitorsof the mobile sales operation in view of a location based on the GPScoordinates of the mobile sales operation to determine the locationrecommendations for the available routes; determine the locationrecommendations for the available routes, at least in part, based on thesales of the one or more mobile competitors in view of the locationbased on the GPS coordinates of the mobile sales operation; send a firstcommunication comprising the location recommendations for the availableroutes to the computing device of the mobile sales operation; and send,by the one or more processors, a second communication comprising GPScoordinates of at least one updated location recommendation for one ofthe available routes to the computing device of the mobile salesoperation in response to detecting movement of at least one of themobile competitors.
 2. The system of claim 1, wherein the analytic datafurther comprises historic sales data and map data that are used incombination to determine the new location recommendations for theavailable routes.
 3. The system of claim 1, wherein first communicationfurther comprises total travel time and total on-location time for eachof the available routes.
 4. The system of claim 1, wherein thedetermining of the location recommendations for the available routes isfurther based on a predefined assumption of profit.
 5. The system ofclaim 1, wherein at least one of the available routes is determined, atleast in part, based on respective driving conditions on the route. 6.The system of claim 1, wherein the available routes comprise a primaryroute and at least one alternative route.
 7. The system of claim 1,wherein the analytic data further comprises data from at least one datasource selected from the group consisting of: a payment providerdatabase; an online sales database; a credit database; a home ownershipdatabase; a population database; an income distribution database; aconsumer database; a demographic database; a tax database; a censusdatabase; a marketing database; and an interne search engine.
 8. Acomputer-implemented method for dynamically routing a mobile salesoperation, comprising: receiving, from a computing device associatedwith the mobile sales operation, a request to provide locationrecommendations for each of a plurality of available routes to themobile sales operation, the request comprising global positioning system(GPS) coordinates from a GPS device associated with the mobile salesoperation; analyzing, by a computer system, analytic data comprisingsales of one or more mobile competitors of the mobile sales operation inview of a location based on the GPS coordinates of the mobile salesoperation to determine the location recommendations for the availableroutes; determining, by the computer system, the locationrecommendations for the available routes, at least in part, based on thesales of the one or more mobile competitors in view of the locationbased on the GPS coordinates of the mobile sales operation; sending, bythe computer system, a first communication comprising the locationrecommendations for the available routes to the computing deviceassociated with the mobile sales operation; and sending, by the computersystem, a second communication comprising GPS coordinates of at leastone updated location recommendation for one of the available routes tothe computing device of the mobile sales operation in response todetecting movement of at least one of the mobile competitors.
 9. Thecomputer-implemented method of claim 8, wherein determining the locationrecommendations for the available routes is also at least in part basedon a cost to relocate the mobile sales operation between the locationsalong each respective available route.
 10. The computer-implementedmethod of claim 8, wherein the sales of the one or more mobilecompetitors is provided by a payment processing server.
 11. Thecomputer-implemented method of claim 8, wherein the analytic datafurther comprises historic sales data of the mobile sales operation. 12.The computer-implemented method of claim 8, wherein the secondcommunication further comprises an updated total travel time and anupdated total on-location time for each updated available route havingat least one updated location recommendation.
 13. The method of claim 8,wherein the analytic data comprises sales of a combination of at leastone mobile seller other than the mobile sales operation and at least oneother fixed location vendor.
 14. The method of claim 8, wherein theanalytic data includes data from at least one data source selected fromthe group consisting of: a payment provider database; an online salesdatabase; a credit database; a home ownership database; a populationdatabase; an income distribution database; a consumer database; ademographic database; a tax database; a census database; a marketingdatabase; and an internet search engine.
 15. A non-transitory computerreadable medium comprising instructions, that when executed by one ormore processors of a computing device, cause the one or more processorsto: receive, from a computer system associated with a mobile salesoperation, a request to provide location recommendations for each of aplurality of available routes to the mobile sales operation, the requestcomprising global positioning system (GPS) coordinates of the mobilesales operation from a GPS device associated with the mobile salesoperation; analyze, by the computing device, analytic data comprisingsales of one or more mobile competitors of the mobile sales operation inview of a location based on the GPS coordinates of the mobile salesoperation to determine the location recommendations for the availableroutes; determine, by the computing device, the location recommendationsfor the available routes, at least in part, based on the sales of theone or more mobile competitors in view of the location based on the GPScoordinates of the mobile sales operation; send, by the computingdevice, a first communication comprising the location recommendationsfor the available routes to the computer system associated with themobile sales operation; and send, by the computing device, a secondcommunication comprising GPS coordinates of at least one updatedlocation recommendation for one of the available routes to the computingdevice associated with the mobile sales operation in response todetecting movement of at least one of the mobile competitors.
 16. Thenon-transitory computer readable medium of claim 15, wherein theavailable routes comprise a primary route and at least one alternativeroute.
 17. The non-transitory computer readable medium of claim 15,wherein the sales of the one or more competitors is provided by anonline marketplace server.
 18. The non-transitory computer readablemedium of claim 15, wherein the analytic data further comprises historicsales data of the mobile sales operation.
 19. The non-transitorycomputer readable medium of claim 15, wherein the second communicationfurther comprises an updated total travel time and an updated totalon-location time for each updated available route having at least oneupdated location recommendation.
 20. The non-transitory computerreadable medium of claim 15, wherein the analytic data further compriseshistoric sales data of at least one other vendor having both a fixedlocation and a mobile sales presence.
 21. The non-transitory computerreadable medium of claim 15, wherein the analytic data includes datafrom at least one data source selected from the group consisting of: apayment provider database; an online sales database; a credit database;a home ownership database; a population database; an income distributiondatabase; a consumer database; a demographic database; a tax database; acensus database; a marketing database; and an internet search engine.